Debug monad on local sever ( no crypto ) Standard Haskell RTS
نویسندگان
چکیده
Using homomorphic encryption and secure multiparty computation, cloud servers may perform regularly structured computation on encrypted data, without access to decryption keys. However, prior approaches for programming on encrypted data involve restrictive models such as boolean circuits, or standard languages that do not guarantee secure execution of all expressible programs. We present an expressive core language for secure cloud computing, with primitive types, conditionals, standard functional features, mu-table state, and a secrecy preserving form of general recursion. This language, which uses an augmented information-flow type system to prevent control-flow leakage, allows programs to be developed and tested using conventional means, then exported to a variety of secure cloud execution platforms, dramatically reducing the amount of specialized knowledge needed to write secure code. We present a Haskell-based implementation and prove that cloud implementations based on secret sharing, homomorphic encryption, or other alternatives satisfying our general definition meet precise security requirements.
منابع مشابه
Accumulating bindings
We give a Haskell implementation of Filinski’s normalisation by evaluation algorithm for the computational lambda-calculus with sums. Taking advantage of extensions to the GHC compiler, our implementation represents object language types as Haskell types and ensures that type errors are detected statically. Following Filinski, the implementation is parameterised over a residualising monad. The ...
متن کاملMonadic I/o in Haskell 1.3
We describe the design and use of monadic I/O in Haskell 1.3, the latest revision of the lazy functional programming language Haskell. Haskell 1.3 standardises the monadic I/O mechanisms now available in many Haskell systems. The new facilities allow more sophisticated text-based application programs to be written portably in Haskell. Apart from the use of monads, the main advances over standar...
متن کاملRecursion Is a Computational Eeect Recursion Is a Computational Eeect
In a recent paper, Launchbury, Lewis, and Cook observe that some Haskell applications could bene t from a combinator m x for expressing recursion over monadic types. We investigate three possible de nitions of m x and implement them in Haskell. Like traditional xpoint operators, there are two approaches to the de nition of m x: an unfolding one based on mathematical semantics, and an updating o...
متن کامل18.S996S13 Project: In search of a Monad
For programmers, Monads are a well-known way to represent an abstract data structure, but without knowing its true nature. Admittedly, the definition of Monads in Category Theory is too subtle and obscure so makes people to avoid from trying to understand them. In this paper, we attempt to explore popular Monads in a purely functional programming language, Haskell, with a Category-theoretic min...
متن کاملMonads for Incremental Computing Functional Pearl
This paper presents a monadic approach to incremental computation, suitable for purely functional languages such as Haskell. A program that uses incremental computation is able to perform an incremental amount of computation to accommodate for changes in input data. Recently, Acar, Blelloch and Harper presented a small Standard ML library that supports efficient, high-level incremental computat...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2012